PLCopen Function Blocks
To offer flexibility, ease of use and reusability, the library consists of command-oriented function blocks that have a reference to the axis, e.g. the abstract data type Axis
The PLCopen A vendor -and product- independent worldwide association active in Industrial Control and aiming at standardizing PLC file formats based on XML Library contains function blocks for:
- Control: function blocks to define and initialize motion, control power, and reset errors
- I/O: function blocks to control interaction with Digital I/O and Touch Probe and trigger registration functionality
- Info: function blocks to provide information on motion, position, status, and the ability to read and write other drive parameters
- PLCopen Motion: function blocks to execute different types of motion
- Profile: function blocks for master/slave motion
- Reference: function blocks to reset position
- Registration: function blocks to perform registration
MC_MoveAbsolute | performs a single-axis move to a specified endpoint position. |
MC_MoveRelative | performs a single-axis move of a specified distance relative to the actual position at the time of the start of execution. |
MC_MoveAdditive | commands a controlled motion of a specified relative distance. Can also be used to interrupt a motion currently being performed. In this case the MotionAdditive FB causes the speed, acceleration, and deceleration of the motion already running to be changed to the parameters specified in the MC_MoveAdditive FB. If the MC_MoveAdditive FB is activated in Continuous Mode, the specified relative distance is added to the actual position (at the time of execution). |
MC_MoveSuperimposed | commands a controlled motion of a specified relative distance additional to an existing motion. The existing Motion is not interrupted, but is superimposed by the additional motion. |
MC_MoveVelocity | commands a never-ending controlled motion (jog) at a specified velocity. |
MC_Stop | commands a controlled motion stop and transfers the axis to the "Stopping" state. It aborts any ongoing function block execution. When the Done output is set, the state transfers to StandStill. While the axis is in Stopping state, no other FB can perform any motion on the same axis. |
MC_Power | controls the power stage: enable(on) and disable (off). |
MC_ReadStatus | returns Axis status details with respect to the motion currently in progress. |
MC_ReadAxisErr | indicates Drive-related errors. |
MC_ResetError | makes the transition from the state ErrorStop to StandStill by resetting all internal axis-related errors and clearing pending commands – it does not affect the output of the FB instances. |
MC_ReadParameter & MC_ReadBoolParameter | return the value of a Drive parameter. The returned value has to be converted to Real if required. If not possible, the vendor has to provide a supplier-dependent FB for it. |
MC_WriteParameter & MC_WriteBoolParameter | modify the value of a Drive parameter. |
MC_ReadActualPosition | returns the value of the actual position. |
MC_MachRegist | performs Mark-to-Machine registration |
MC_MarkRegist | performs Mark-to-Mark registration |
MC_StopRegist | turns off registration |
MC_CamTblSelect | selects the Cam tables by setting the pointers to the relevant tables. |
MC_CamIn | engages the Cam. |
MC_CamOut | disengages the slave from the master axis immediately in a cam block. |
MC_GearIn | commands a ratio between the VELOCITY of the slave and master axis. |
MC_GearOut | disengages the slave from the master axis. |
MC_AddSuperAxis |
adds a superimposed axis to a specified axis. |
MC_RemSuperAxis |
removes a superimposed axis from an axis. |